package es.ucm.is.www.GUI.client.panels;



import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.WindowResizeListener;
import com.google.gwt.user.client.ui.AbsolutePanel;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.ClickListener;
import com.google.gwt.user.client.ui.HTML;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.PopupPanel;
import com.google.gwt.user.client.ui.RootPanel;
import com.google.gwt.user.client.ui.VerticalPanel;
import com.google.gwt.user.client.ui.Widget;

import es.ucm.is.www.GUI.client.Root;
/**
 * <p>Title: ErrorPanel.java </p>
 *
 * <p>Description: Panel de error</p>
 *
 * <p>Copyright: </p>
 *
 * @author 
 * @version 1.0
 * @see
 */
public class ErrorPanel extends PopupPanel{
	
	private VerticalPanel contenido;
	private WindowResizeListener listener;
	/**
	 * Constructora de la clase
	 * @param message: mensaje de error
	 */
	public ErrorPanel(String message){
		super(false);
		Button aceptar = new Button("Aceptar");
		final AbsolutePanel abs = new AbsolutePanel();
		abs.setPixelSize(RootPanel.get().getOffsetWidth(), RootPanel.get().getOffsetHeight());
		abs.setStyleName("glass");
		Root.fondo = abs;
		listener = new WindowResizeListener(){

			public void onWindowResized(int width, int height) {
				abs.setPixelSize(Window.getClientWidth(), Window.getClientHeight());
				
			}
		};
		Window.addWindowResizeListener(listener);
		RootPanel.get().add(abs, 0, 0);
		aceptar.addClickListener(new ClickListener(){

			public void onClick(Widget sender) {
				// TODO Auto-generated method stub
				Window.removeWindowResizeListener(listener);
				RootPanel.get().remove(abs);
				hide();
			}
			
		});
		Label error = new Label("ERROR");
		HTML lMessage = new HTML(message);
		contenido = new VerticalPanel();
		contenido.add(error);
		contenido.add(lMessage);
		contenido.add(aceptar);
		setWidget(contenido);
		
		center();
	}	
}
